package ca.usherbrooke.domus.sipnmove.useragent;

import ca.usherbrooke.domus.sipnmove.call.Call;

/**
 * A user agent that handles call initiation
 * 
 * The role of the user agent is to handle incoming calls or to initiate new calls
 */
public interface UserAgent {

	/**
	 * Add a new call to this user agent
	 */
	public void addCall(Call call);

	/**
	 * Register a new call listener in this user agent
	 */
	public void addNewCallListener(NewCallListener newCallListener);

	/**
	 * Quit the user agent
	 */
	public void quit();

}
